package com.rentong.wx.utils;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.TimeUnit;

public class TimeFormatter {

    public static String formatDate(Date date) {
        long delta = System.currentTimeMillis() - date.getTime(); // 获取两个时间的差值（毫秒）
        long seconds = TimeUnit.MILLISECONDS.toSeconds(delta); // 转换为秒
        long minutes = TimeUnit.MILLISECONDS.toMinutes(delta); // 转换为分钟
        long hours = TimeUnit.MILLISECONDS.toHours(delta); // 转换为小时
        long days = TimeUnit.MILLISECONDS.toDays(delta); // 转换为天

        if (days == 0) {
            if (hours == 0) {
                if (minutes == 0) {
                    if (seconds < 60) {
                        return seconds + " 秒前"; // 秒前
                    } else {
                        return minutes + " 分钟前"; // 分钟前
                    }
                } else {
                    return minutes + " 分钟前"; // 分钟前
                }
            } else if (hours == 1) {
                return "1 小时前"; // 1小时前
            } else {
                return hours + " 小时前"; // 小时前
            }
        } else if (days == 1) {
            return "昨天"; // 昨天
        } else {
            // 可以添加更多的逻辑来处理更早的时间，例如使用SimpleDateFormat格式化日期等。
            SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyyy"); // 例如：Jan 01, 2023
            return sdf.format(date); // 直接格式化为具体日期
        }
    }



}
